SEARCH KEYWORD -- Programming advice
Cache Reheating - Not to be Ignored
An important aspect to keep in mind with databases is the cost of cache reheating after a server restart. Consider the following diagram which shows several cache servers (e.g., memcached) in front of a database server.This sort of setup is common and can work quite well when appropriate; it removes read load from the database and allows more RAM to be utilized for scaling (when the database doesn’t scale horizontally). But what happens if all the cache servers restart at the same time, s...
Database,Cost,Cache reheating,Advice 2011-09-21 09:47:29
What to put on whiteboard during an interview
As a programmer, you may go through different kinds of programming tests while interviewing for jobs. The most famous and difficult one may be the whiteboard test for lots of people. Usually the interviewer will give the candidate an algorithm problem or case study and ask the candidate to implement the algorithm with his/her favorite programming language. The code to be written is not too much but it requires the candidate to thoroughly consider different edge cases. So wha...
TIPS,INTERVIEW,WHITEBOARD TEST 2014-08-29 20:34:52
People working with computers seem to have a lot of spare time
People working with computers are a group of people who spend much time on communicating with PCs, Handsets and other programmed hardware devices. Usually, these people are thought as a group of busy people. When we see them, they are often sleepy and seem not caring about anything else. They often work day and night, spend many hours on finding and fixing an unknown bug or trying to meet the project deadline Are they really so busy? Lets see what some people think about them? Just f...
Programming,Busy,Spare time,Fun 2012-05-01 07:06:51
10 Questions with Facebook Research Engineer – Andrei Alexandrescu
Today we caught up with Andrei Alexandrescu for a “10 Question†interview. He is a Romanian born research engineer at Facebook living in the US, you can contact him on his website erdani.com or @incomputable. We will talk about some of the juicy stuff that going on at Facebook, so let’s get started. Hello Andrei, welcome on Server-Side Magazine. 1. Tell us a little bit about yourself. Who are you? Where and what do you work? Who am I? Ah, the coffee breath of one talki...
C++,Facebook,PHP,Future,Machine learning 2012-02-06 08:08:12
Why developer-friendliness is central to API design
Today, APIs play a bigger role in software development than ever before. The evolution of computing has been dominated by ever-increasing levels of abstraction; the use of higher-level languages, of course, but also the development of platforms, libraries, and frameworks. Professor Douglass C. Smith claims the progression of this second category far outpaced the development of programming languages. Developers are also noticing that difficulty has shifted from designing algorithms a...
API,User friendly,Significance, Improve quality 2011-12-21 02:29:54
Lasagna Code
Anyone who claims to be even remotely versed in computer science knows what “spaghetti code†is. That type of code still sadly exists. But today we also have, for lack of a better term — and sticking to the pasta metaphor — “lasagna codeâ€.Lasagna Code is layer upon layer of abstractions, objects and other meaningless misdirections that result in bloated, hard to maintain code all in the name of “clarityâ€. It drives me nuts to see how badly some c...
Lasagna Code,Analysis,spaghetti code 2011-11-16 03:12:03
Python – parallelizing CPU-bound tasks with multiprocessing
In a previous post on Python threads, I briefly mentioned that threads are unsuitable for CPU-bound tasks, and multiprocessing should be used instead. Here I want to demonstrate this with benchmark numbers, also showing that creating multiple processes in Python is just as simple as creating multiple threads. First, let’s pick a simple computation to use for the benchmarking. I don’t want it to be completely artificial, so I’ll use a dumbed-down version of factorization...
Python,Multitasking,Multiprocessing,CPU bound 2012-01-17 11:38:22
All Programming is Web Programming
Michael Braude decries the popularity of web programming:The reason most people want to program for the web is that they're not smart enough to do anything else. They don't understand compilers, concurrency, 3D or class inheritance. They haven't got a clue why I'd use an interface or an abstract class. They don't understand: virtual methods, pointers, references, garbage collection, finalizers, pass-by-reference vs. pass-by-value, virtual C++ destructors, or the differences between C# struc...
Programming,Web programming,Opposite,Views,Web app 2011-11-12 10:38:00
4 asynchronous programming methods in JavaScript
You may know the execution environment of JavaScript is single threaded. The so called single thread means only one task can be running at any time, if there are many tasks, they need to be in a queue and wait for the previous task to be completed. The advantage of this mode is it's easy to implement and the execution environment is relative simple; the disadvantage is that if one task takes long time, the tasks following it must wait in the queue and this will delay other tasks consequently. Th...
JAVASCRIPT,ASYNCHRONOUS PROGRAMMING, EVENT MODEL,PROMISE 2012-12-25 00:55:47
Google Dart? Don’t bet against JavaScript
Procotols, programming languages and operating systems all compete in a constantly evolving software ecosystem. Out of that ecosystem only a few technologies truly have staying power and survive over the long term. An example? How about Ethernet? It’s been a survivor over the last thirty years despite existing in a constantly changing landscape that’s been populated with many worthy competitors. Ethernetâ€...
Google Dart,JavaScript,Comparison,Future 2011-12-06 09:49:39
RECENT
- Common Pitfalls When Handling JSON in Golang
- Streamlining the Project Invoicing Process: Tools and Strategies
- Performance comparison of string concatenation in Go language
- Why init() is not recommended in Go
- The Role of Coding Skills in Advancing Tech Careers
- Tips for Socializing With Friends During College
- Proximity Cards Do More Than Just Open Doors
- How to choose quality painted auto parts
- Oval engagement rings from MoonOcean: Elegance of form and individual approach
- Hologres vs AWS Redshift
- more>>